package entidades;


/**
 * Clase de entidad: Clase que maneja las celdas.
 * 
 * @author  Grupo N11
 * @author  Prinsich Bernz, Emilio J. A.
 * @author 	Solia, Guillermo D.
 * @version  2.0
 */

public class Hoja {

	//Variables---------------------------------------------------------------------------------
	/**Arreglo de celdas.*/
	private Celda [][] celdas;
	/**Numero de Hoja*/
	private int hoja;
	
	//Constructores---------------------------------------------------------------------------------
	/**
	 * Constructor de la Clase.
	 */
	public Hoja(int nHoja) {
		setHoja(nHoja);
		celdas = new Celda[100][100];
		for(int i =0; i<100; i++)
			for(int j=0; j<100; j++){
				celdas[i][j] = new Celda(getHoja(), i, j);
			}
	}

	//Getters & Setters---------------------------------------------------------------------------------
	/**
	 * Settea el valor de una celda especifica
	 * @param str
	 * @param fila
	 * @param columna
	 */
	public void setDato(String str,int fila, int columna){
		celdas[fila][columna].setDato(str);
	}

	/**
	 * Retorna el valor de una celda especifica
	 * @param fila
	 * @param columna
	 * @return celdas[fila][columna].getDato();
	 */
	public String getDato(int fila, int columna){
		return celdas[fila][columna].getDato();
	}
	
	public void setFormula(String formula, int fila, int columna){
		celdas[fila][columna].setFormula(formula);
	}
	
	public String getFormula(int fila, int columna){
		return celdas[fila][columna].getFormula();
	}

	/**
	 * @param hoja the hoja to set
	 */
	public void setHoja(int hoja) {
		this.hoja = hoja;
	}

	/**
	 * @return the hoja
	 */
	public int getHoja() {
		return hoja;
	}
	
	/**
	 * Retornal el Objeto Celda.
	 * @param fila
	 * 			Fila donde esta la celda.
	 * @param columna
	 * 			Columna donde esta la celda.
	 * @return Celda
	 * 			Objeto.
	 */
	public Celda getCelda(int fila, int columna){
		return celdas[fila][columna];
	}
	
	
}

